package com.cmpe451.nutty.model;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;

@Entity
@Table(name = "EXAMPLE_MODEL_2")
public class TwitterUser extends BaseModel {
	private static final long serialVersionUID = 1L;

	@Column(name = "SCREEN_NAME", nullable = false)
	private String screenName;

	@Column(name = "TWITTER_ID", nullable = false, unique = true)
	private Long twitterId;

	@Column(name = "FOLLOWERS", nullable = true)
	private Integer followers;

	@Column(name = "FRIENDS", nullable = true)
	private Integer friends;

	@Column(name = "LANGUAGE")
	private String language;

	@Column(name = "TWEET_LOOKUP_COUNT", columnDefinition = "bigint(20) not null default 0")
	private Long tweetLookupCount = 0L;

	@Column(name = "IS_SPECIAL_USER", columnDefinition = "bit(1) not null default 0")
	private Boolean isSpecialUser = Boolean.FALSE;

	@Column(name = "FULL_NAME")
	private String fullName;

	@Column(name = "PICTURE")
	private String picture;

	@Override
	public String toString() {
		StringBuilder builder = new StringBuilder();
		builder.append("TwitterUser [screenName=");
		builder.append(screenName);
		builder.append(", twitterId=");
		builder.append(twitterId);
		builder.append(", followers=");
		builder.append(followers);
		builder.append(", friends=");
		builder.append(friends);
		builder.append(", language=");
		builder.append(language);
		builder.append(", tweetLookupCount=");
		builder.append(tweetLookupCount);
		builder.append(", isSpecialUser=");
		builder.append(isSpecialUser);
		builder.append(", fullName=");
		builder.append(fullName);
		builder.append(", picture=");
		builder.append(picture);
		builder.append("]");
		return builder.toString();
	}

	public String getScreenName() {
		return screenName;
	}

	public void setScreenName(String screenName) {
		this.screenName = screenName;
	}

	public Long getTwitterId() {
		return twitterId;
	}

	public void setTwitterId(Long twitterId) {
		this.twitterId = twitterId;
	}

	public Integer getFollowers() {
		return followers;
	}

	public void setFollowers(Integer followers) {
		this.followers = followers;
	}

	public Integer getFriends() {
		return friends;
	}

	public void setFriends(Integer friends) {
		this.friends = friends;
	}

	public String getLanguage() {
		return language;
	}

	public void setLanguage(String language) {
		this.language = language;
	}

	public Long getTweetLookupCount() {
		return tweetLookupCount;
	}

	public void setTweetLookupCount(Long tweetLookupCount) {
		this.tweetLookupCount = tweetLookupCount;
	}

	public Boolean getIsSpecialUser() {
		return isSpecialUser;
	}

	public void setIsSpecialUser(Boolean isSpecialUser) {
		this.isSpecialUser = isSpecialUser;
	}

	public String getFullName() {
		return fullName;
	}

	public void setFullName(String fullName) {
		this.fullName = fullName;
	}

	public String getPicture() {
		return picture;
	}

	public void setPicture(String picture) {
		this.picture = picture;
	}

}
